
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:th="http://www.thymeleaf.org"
      lang="en">
<head>
    <!-- Standard Meta 适配移动设备 -->
    <meta charset="utf-8" />
    <title th:text="'留言墙 | '+ #{web_Name}"></title>
    <meta name="keywords" th:content="#{web_Keywords}">
    <meta name="description" th:content="#{web_Description}">

    <script src="/js/bluebird.min.js"></script>
    <script src="/js/whatwg-fetch@2.0.3_fetch.js"></script>
    <!--End-->
    <script>
        fetch('https://v1.hitokoto.cn/?max_length=21')
            .then(function (res){
                return res.json();
            })
            .then(function (data) {
                const hitokoto = document.getElementById('hitokoto');
                hitokoto.innerText =data.hitokoto;
            })
            .catch(function (err) {
                console.error(err);
            })
    </script>
    <div th:replace="/fragments/header :: common-js"></div>

</head>
<body>

<!--导航-->
<nav class="gird-header">
    <div th:replace="/fragments/header :: menu">
    </div>
    <div class="pageHeadContainer">
        <img src="../static/images/background/background5.jpg"  th:src="#{message_Background}" class="ui image backgroundImg">
        <div class="backgroundLayout">
            <div class="myInfoDiv" align="center">
                <div class="word" >
                    <br>
                    <div id="hitokoto" style="font-size:30px;color:#ffffff;">:D 获取中...</div>
                </div>
            </div>
        </div>
    </div>
</nav>

<br>
<br>
<br>
<!--中间内容-->
<div id="waypoint" class="m-margin- animated fadeIn">
    <div class="ui container m-opacity box-shadow-max">
        <!--                新增留言-->
        <div id="message-form" class="ui form">
            <input type="hidden" name="parentMessage.id" value="-1">
            <!--                    留言区-->
            <div class="field">
                <textarea name="content" placeholder="请输入留言信息..."></textarea>
            </div>
            <div class="ui grid">
                <!--                    输入姓名-->
                <div class="five wide column">
                    <div class="field m-mobile-wide m-margin-bottom-small">
                        <div class="ui left icon input">
                            <i class="user icon"></i>
                            <input type="text" name="nickname" placeholder="Id" th:value="${session.user} == null ? '' : ${session.user.nickname}">
                        </div>
                    </div>
                </div>

                <!--                        输入邮箱-->
                <div class="five wide column">
                    <div class="field m-mobile-wide m-margin-bottom-small">
                        <div class="ui left icon input">
                            <i class="mail icon"></i>
                            <input type="text" name="email" placeholder="Email" th:value="${session.user} == null ? '' :  ${session.user.email}">
                        </div>
                    </div>
                </div>

                <div class="right aligned six wide column">
                    <div class="field m-mobile-wide m-margin-bottom-small">
                        <button id="messagepost-btn" type="button" class="ui teal button m-mobile-wide"><i class="edit icon"></i>发布</button>
                    </div>
                </div>
            </div>
        </div>
        <br>
        <br>
        <!--留言区-->
        <div class="ui bottom attached m-margin-top">
            <div id="message-container" class="ui teal segment">
                <div th:fragment="messageList">
                    <div class="ui threaded comments" style="max-width: 100%;">
                        <h3 class="ui dividing header">留言</h3>
                        <div class="comment" th:each="message : ${messages}">
                            <a class="avatar">
                                <img src="/image/me.jpg" th:src="${message.avatar}">
                            </a>
                            <div class="content">
                                <a class="author">
                                    <span th:text="${message.nickname}">Matt</span>
                                    <div class="ui mini basic teal left pointing label m-padded-mini" th:if="${message.adminMessage}">栈主</div>
                                </a>
                                <div class="metadata">
                                    <span class="date" th:text="${#dates.format(message.createTime,'yyyy-MM-dd HH:mm')}">今天下午 5:42</span>
                                </div>
                                <div class="text" th:text="${message.content}">太赞了！ </div>
                                <div class="actions">
                                    <a class="reply" data-messageid="1" data-messagenickname="Matt" th:attr="data-messageid=${message.id},data-messagenickname=${message.nickname}" onclick="reply(this)">回复</a>
                                    <a class="delete" href="#" th:href="@{/messages/{id}/delete(id=${message.id})}" onclick="return confirm('确定要删除该评论吗？三思啊! 删了可就没了！')" th:if="${session.user}">删除</a>
                                </div>
                            </div>
                            <!--子集留言-->
                            <div class="comments" th:if="${#arrays.length(message.replyMessages)}>0">
                                <div class="comment" th:each="reply : ${message.replyMessages}">
                                    <a class="avatar">
                                        <img src="/image/me.jpg" th:src="${reply.avatar}">
                                    </a>
                                    <div class="content">
                                        <a class="author">
                                            <span th:text="${reply.nickname}">小红</span>
                                            <div class="ui mini basic teal left pointing label m-padded-mini" th:if="${reply.adminMessage}">栈主</div>
                                            &nbsp;<span th:text=" ${reply.parentNickname} " class="m-teal">@ 小白</span>
                                        </a>
                                        <div class="metadata">
                                            <span class="date" th:text="${#dates.format(reply.createTime,'yyyy-MM-dd HH:mm')}">今天下午 5:42</span>
                                        </div>
                                        <div class="text" th:text="${reply.content}">太赞了！ </div>
                                        <div class="actions">
                                            <a class="reply" data-messageid="1" data-messagenickname="Matt" th:attr="data-messageid=${reply.id},data-messagenickname=${reply.nickname}" onclick="reply(this)">回复</a>
                                            <a class="delete" href="#" th:href="@{/messages/{id}/delete(id=${reply.id})}" onclick="return confirm('确定要删除该评论吗？三思啊! 删了可就没了！')" th:if="${session.user}">删除</a>
                                        </div>
                                    </div>
                                </div>
                            </div>
                        </div>

                    </div>
                </div>

            </div>

        </div>

        <br>
        <br>

    </div>
</div>


<br>
<br>
<br>


<!--置顶图标-->
<button id="toTop" class="circular ui icon button" style="display: none;">
    <i class="ui caret up icon"></i>
</button>



<!--底部栏-->
<div th:replace="/fragments/footer :: footer-content"></div>




<script>

    $('#blog-message').load("/message");

    //评论表单验证
    $('.ui.form').form({
        fields: {
            title: {
                identifier: 'content',
                rules: [{
                    type: 'empty',
                    prompt: '请输入评论内容'
                }
                ]
            },
            content: {
                identifier: 'nickname',
                rules: [{
                    type: 'empty',
                    prompt: '请输入你的大名'
                }]
            },
            type: {
                identifier: 'email',
                rules: [{
                    type: 'email',
                    prompt: '请填写正确的邮箱地址'
                }]
            }
        }
    });

    // 校验信息
    $('#messagepost-btn').click(function () {
        const boo = $('.ui.form').form('validate form');
        if (boo) {
            console.log('校验成功');
            postData();
        } else {
            console.log('校验失败');
        }
    });

    //发送请求给后端
    function postData() {
        $.ajax({
            url:"" , // 请求路径
            type:"POST" , //请求方式
            data:{"parentMessage.id":$("[name='parentMessage.id']").val(),"nickname":$("[name='nickname']").val(),"email":$("[name='email']").val(),"content":$("[name='content']").val()},
            success:function () {
                alert("留言成功");
                location.reload();
            },//响应成功后的回调函数
            error:function () {
                alert("出错啦...")
            },//表示如果请求响应出现错误，会执行的回调函数
            dataType:"text"//设置接受到的响应数据的格式
        });
    }

    // 清除表单
    function clearContent() {
        $("[name='nickname']").val('');
        $("[name='email']").val('');
        $("[name='content']").val('');
        $("[name='parentMessage.id']").val(-1);
        $("[name='content']").attr("placeholder", "请输入评论信息...");
    }

    function reply(obj) {
        const messageId = $(obj).data('messageid');
        const messageNickname = $(obj).data('messagenickname');
        $("[name='content']").attr("placeholder", "@"+messageNickname).focus();
        $("[name='parentMessage.id']").val(messageId);
        $(window).scrollTo(0,500);
    }

</script>
</body>
</html>